package com.battle.service.controller.web;

import com.battle.pojo.param.sirens.GetSirensListByTypeParam;
import com.battle.pojo.param.sirens.api.GetSirensListApiParam;
import com.battle.pojo.vo.sirens.GetSirensInfoApiVo;
import com.battle.pojo.vo.sirens.GetSirensListApiVo;

import com.battle.pojo.vo.sirens.api.GetSirensListApiDetailsVo;
import com.battle.service.service.in.SirensApiService;
import nirvana.core.domains.vo.ApiResult;
import nirvana.core.domains.vo.PageResult;
import org.springframework.web.bind.annotation.*;

/**
 * web/警情
 * 【描 述】：
 * 【环 境】：J2SE
 * 【详 细】：
 */
@RestController
@RequestMapping("/sirensInfo/web")
public class SirensApiController {

    private final SirensApiService service;

    public SirensApiController(SirensApiService service) {
        this.service = service;
    }

    /**
     * 第三方警情列表
     * @param param
     * @return
     */
    @PostMapping("/list")
    public ApiResult<PageResult<GetSirensListApiDetailsVo>> getSirensList(@RequestBody GetSirensListApiParam param){
        PageResult<GetSirensListApiDetailsVo> result = service.getSirensList(param);
        return ApiResult.ok(result);
    }


    /**
     * 根据类型查看没有生成对应战例的警情列表
     * @param param
     * @return
     */
    @PostMapping("/getSirensListByType")
    public ApiResult<PageResult<GetSirensListApiVo>> getSirensListByType(@RequestBody GetSirensListByTypeParam param){
        PageResult<GetSirensListApiVo> result = service.getSirensListByType(param);
        return ApiResult.ok(result);
    }

    /**
     * 第三方警情详情
     * @param id
     * @return
     */
    @GetMapping("/info")
    public ApiResult<GetSirensInfoApiVo> getSirensInfo(@RequestParam("id") String id){
        GetSirensInfoApiVo vo = service.getSirensInfo(id);
        return ApiResult.ok(vo);
    }


}
